package com.hmall.common.client;

import com.hmall.common.dto.PageDTO;
import com.hmall.common.entity.Item;
import com.hmall.common.vo.PageVO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;

@FeignClient("itemservice")
public interface ItemApi {


    /**
     * 按 ID 查找商品
     *
     * @param id 编号
     * @return {@link Item}
     */
    @GetMapping("item/{id}")
    Item findItemById(@PathVariable("id") Long id);

    /**
     * 修改商品
     *
     * @param item 商品
     */
    @PutMapping("item")
    void modifyItem(@RequestBody Item item);

    /**
     * 页面查询
     *
     * @param pageDTO 页面 DTO
     * @return {@link PageVO}<{@link Item}>
     */
    @GetMapping("/item/list")
    public PageVO<Item> pageQuery(PageDTO pageDTO);


    /**
     * 页面查询
     *
     * @param page 页
     * @param size 大小
     * @return {@link PageVO}<{@link Item}>
     */
    @GetMapping("/item/list")
    PageVO<Item> PageQuery(@RequestParam("page") int page, @RequestParam("size") int size);





}
